Remote mobile monitoring solutions enable automated testing of applications running on mobile devices, such as mobile phone or tablet computers. Monitor sites are set up at different geographic locations with each site hosting multiple mobile devices. Tests are scheduled to be executed on these mobile devices depending on various criteria including, network carrier, mobile device model, mobile device type, geographical location etc. The tests may be simple tests such as a “ping test” to test connectivity to a particular server or may be in the form of a test script that would drive an application running on the mobile device. Tests may be initiated by a controller remote from the monitor site and are typically executed by agents running on the mobile device. Statistics pertaining to the performance of the application are collected and reported back to the test controller.
For communication at the monitor site, the test controller and the mobile device under test may be interconnected using a USB connection. There are several limitations with this approach. For example, since power may be provided via the USB port to the mobile device, a mobile device under test may need to be modified for use at the monitor site.
In another approach, the mobile device under test may send SMS messages via a cellular network to the test controller during testing. However, in many test scenarios, there is a need to have a persistent connection between the test controller and the mobile device throughout the life cycle of the test. The persistent connectivity is required for both controlling the test and monitoring results of the test during the test cycle.
Therefore, it is desirable to develop a system that enables automated testing of mobile devices using a persistent data connection with the test controller. This section provides background information related to the present disclosure which is not necessarily prior art.